package com.ruoyi.factorydata.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 工序物料关联对象 process_material_relation
 *
 * @author ruoyi
 * @date 2025-07-12
 */
@Data
@TableName(resultMap = "com.ruoyi.factorydata.mapper.ProcessMaterialRelationMapper.ProcessMaterialRelationResult")
public class ProcessMaterialRelation extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 工序数据主键id
     */
    @Excel(name = "工序数据主键id")
    private Long processId;

    /**
     * 物料id
     */
    @Excel(name = "物料id")
    private Long materialId;

    /**
     * 物料编码
     */
    @Excel(name = "物料编码")
    private String materialCode;

    /**
     * 物料名称
     */
    @Excel(name = "物料名称")
    private String materialName;

    /**
     * 物料分类id
     */
    @Excel(name = "物料分类id")
    private Long materialCategoryId;

    /**
     * 物料分类名
     */
    @Excel(name = "物料分类名")
    private String materialCategoryName;

    /**
     * 物料类型id
     */
    @Excel(name = "物料类型id")
    private String materialTypeId;

    /**
     * 物料类型名称
     */
    @Excel(name = "物料类型名称")
    private String materialTypeName;

    /**
     * 制造方式id
     */
    @Excel(name = "制造方式id")
    private String manufacturingMethodId;

    /**
     * 制造方式名称
     */
    @Excel(name = "制造方式名称")
    private String manufacturingMethodName;

    /**
     * 计量单位id
     */
    @Excel(name = "计量单位id")
    private Long materialUnitId;

    /**
     * 计量单位名称
     */
    @Excel(name = "计量单位名称")
    private String materialUnitName;

    /**
     * 规格
     */
    @Excel(name = "规格")
    private String materialSpecification;

    @Excel(name = "使用数量")
    private Integer materialUsedQuantity;
    /**
     * 删除标志 0-未删除，2-已删除
     */
    @TableLogic(value = "0", delval = "2")
    private String delFlag;

    /**
     * 版本号
     */
    @Version
    private Long version;
}